perm filename BLOCKS.HDR[4,ALS]1 blob sn#050694 filedate 1973-06-28 generic text, type T, neo UTF8
00010	REQUIRE "COMSUB.SAI[SYS,ALS]" LOAD_MODULE;
00020	EXTERNAL INTEGER PROCEDURE ARRMAK(INTEGER SIZE);
00030	EXTERNAL PROCEDURE WAIT(INTEGER SECS);
00040	
00050	EXTERNAL STRING PROCEDURE DATIM; COMMENT Returns string equivalent to monitor DAYTIME command;
00060	EXTERNAL STRING PROCEDURE DATIME;
00065	EXTERNAL PROCEDURE SPOOL(STRING S;INTEGER IOCHAN,FLAGS);
00070	
00080	EXTERNAL STRING PROCEDURE STRIN(STRING S);
00090	COMMENT *********      Super good TTY I/O functions     ********;
00100	
00110	DEFINE CR="'15",LF="'12",TAB="'11",SPACE="'40",CRLF="CR&LF";
00120	
00130	EXTERNAL PROCEDURE REALOUT(STRING S;REAL X);
00140	EXTERNAL STRING PROCEDURE CVS3(INTEGER I);
00150	EXTERNAL REAL PROCEDURE CVR(STRING S);
00160	EXTERNAL REAL PROCEDURE INREAL(STRING S);
00170	EXTERNAL INTEGER PROCEDURE ININT(STRING S);
00180	
     

00010	DEFINE TABNUM="16",INSIZ="24";
00020	INTERNAL INTEGER ARRAY PHLIST,HLIST[00:63];
00040	INTERNAL INTEGER ARRAY FLIST[0:35];
00050	INTERNAL INTEGER ARRAY INNAM[0:INSIZ];
00060	INTERNAL INTEGER ARRAY NAMES[0:TABNUM];
00070	INTERNAL INTEGER ARRAY PARENT[0:TABNUM];
00080	INTERNAL INTEGER ARRAY PARENN[0:TABNUM];
00090	INTERNAL INTEGER ARRAY GATE[0:TABNUM];
00100	INTERNAL INTEGER ARRAY IN1[0:TABNUM];
00110	INTERNAL INTEGER ARRAY IN2[0:TABNUM];
00120	INTERNAL INTEGER ARRAY IN3[0:TABNUM];
00130	INTERNAL INTEGER ARRAY IN4[0:TABNUM];
00140	INTERNAL INTEGER ARRAY IN1N[0:TABNUM];
00150	INTERNAL INTEGER ARRAY IN2N[0:TABNUM];
00160	INTERNAL INTEGER ARRAY IN3N[0:TABNUM];
00170	INTERNAL INTEGER ARRAY IN4N[0:TABNUM];
00180	INTERNAL INTEGER ARRAY OUT1[0:TABNUM];
00190	INTERNAL INTEGER ARRAY OUT2[0:TABNUM];
00200	INTERNAL INTEGER ARRAY OUT3[0:TABNUM];
00210	INTERNAL INTEGER ARRAY OUT4[0:TABNUM];
00220	INTERNAL INTEGER ARRAY LRN1[0:TABNUM];
00230	INTERNAL INTEGER ARRAY LRN2[0:TABNUM];
00240	INTERNAL INTEGER ARRAY LRN3[0:TABNUM];
00250	INTERNAL INTEGER ARRAY LRN4[0:TABNUM];
00260	INTERNAL INTEGER ARRAY OUTPUT[0:TABNUM];
00270	INTERNAL INTEGER ARRAY INCNT,INSUB,INDIV,INRAW,INDAT[0:INSIZ];
00280	
00290	
00300	PROCEDURE HEADIN;
00310	BEGIN "HEADIN"  INTEGER CHAN1,EOF;
00320	CHAN1←GETCHAN;
00330	 CLOSE(CHAN1);
00340	  OPEN(CHAN1,"DSK",'10,10,0,0,0,EOF);
00350	  LOOKUP(CHAN1,"TABHED.DAT",0);
00360	ARRYIN(CHAN1,INNAM[0],INSIZ);
00370	ARRYIN(CHAN1,FLIST[0],35);
00380	ARRYIN(CHAN1,PHLIST[0],63);
00390	ARRYIN(CHAN1,HLIST[0],63);
00400	ARRYIN(CHAN1,NAMES[0],TABNUM);
00410	ARRYIN(CHAN1,PARENT[0],TABNUM);
00420	ARRYIN(CHAN1,GATE[0],TABNUM);
00430	ARRYIN(CHAN1,IN1[0],TABNUM);
00440	ARRYIN(CHAN1,IN2[0],TABNUM);
00450	ARRYIN(CHAN1,IN3[0],TABNUM);
00460	ARRYIN(CHAN1,IN4[0],TABNUM);
00470	ARRYIN(CHAN1,OUT1[0],TABNUM);
00480	ARRYIN(CHAN1,OUT2[0],TABNUM);
00490	ARRYIN(CHAN1,OUT3[0],TABNUM);
00500	ARRYIN(CHAN1,OUT4[0],TABNUM);
00510	ARRYIN(CHAN1,LRN1[0],TABNUM);
00520	ARRYIN(CHAN1,LRN2[0],TABNUM);
00530	ARRYIN(CHAN1,LRN3[0],TABNUM);
00540	ARRYIN(CHAN1,LRN4[0],TABNUM);
00550	ARRYIN(CHAN1,OUTPUT[0],TABNUM);
00560	
00570	CLOSE(CHAN1);
00580	RELEASE(CHAN1);
00590	END "HEADIN";
00600	
00610